package com.zhuoyue.system.service;

import java.time.LocalDateTime;
import java.util.List;

import com.zhuoyue.system.domain.TblProductInfo;

/**
 * imageService接口
 *
 * @author hewenze
 * @date 2020-08-21
 */
public interface IProductInfoService {
    /**
     * 查询image
     *
     * @param id imageID
     * @return image
     */
    TblProductInfo selectProductInfoById(String id);

    /**
     * 查询产品列表
     *
     * @param sysImage image
     * @return image集合
     */
    List<TblProductInfo> selectProductInfoList(TblProductInfo sysImage);

    /**
     * App查询产品列表
     *
     * @param sysImage image
     * @return image集合
     */
    List<TblProductInfo> selectProductInfoListForApp(TblProductInfo sysImage);

    /**
     * 新增image
     *
     * @param sysImage image
     * @return 结果
     */
    int insertSysImage(TblProductInfo sysImage);

    /**
     * 修改image
     *
     * @param  productInfo
     * @return 结果
     */
    int updateProductInfo(TblProductInfo productInfo);

    /**
     * 批量删除image
     *
     * @param productInfoId 需要删除的imageID
     * @return 结果
     */
    int deleteSysImageByIds(String productInfoId);

    /**
     * 删除image信息
     *
     * @param id imageID
     * @return 结果
     */
    public int deleteSysImageById(Long id);

    /**
     * 查询某一个系列下的自动入网产品的数量
     *
     * @param seriesId
     * @return
     */
    @Deprecated
    int getCountOfZdrwInOneSeries(Long seriesId);

    /**
     * 设置某个一产品类型下的所有产品的自动入网状态为否
     *
     * @param categoryId
     * @return
     */
    int setZdrwDisableOfCategory(Long categoryId);

    /**
     * 查询app数据表中最后更新的时间
     *
     * @return
     */
    LocalDateTime getLatestUpdateTimeOfApp();
}
